﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;

namespace Sistema_Bancario.Controllers
{
    public class Banco
    {
        private List<Cuenta> cuentas;
        public String nombreDelbanco;

        public String nombre
        {
            get { return this.nombreDelbanco; }
        }

        public List<Cuenta> cuentasDeClientes
        {
            get { return this.cuentas; }
        }


        public Banco(String nombreDelbanco)
        {
            this.nombreDelbanco = nombreDelbanco;
            this.cuentas = new List<Cuenta>();
        }

        public void agregarCuenta(Cuenta cuentaNueva)
        {
            this.cuentas.Add(cuentaNueva);
        }


        public void listarCuentasCorrientesConSaldoNegativo()
        {
            foreach (Cuenta cuenta in cuentas)
            {
                cuenta.mostrarInfoDeCuentaConSaldonegativo();
            }
        }

        public List<Cliente> obtenerListaDeClientes()
        {
            List<Cliente> clientes = new List<Cliente>();
            foreach (Cuenta cuenta in cuentas)
            {
                clientes.Add(cuenta.propietDeLaCuenta);
            }

            return clientes;
        }

        public Cliente obtenerClienteconDni(String dniCliente)
        {
            List<Cliente> clientes = this.obtenerListaDeClientes();
            Cliente clienteADevolver = null;

            foreach (Cliente cliente in clientes)
            {
                if (cliente.dniCliente == dniCliente)
                {
                    clienteADevolver = cliente;
                }
            }

            return clienteADevolver;
        }

    }
}